package com.pubinfo.passbook.common.service.dedicated;

import com.mashape.unirest.http.exceptions.UnirestException;
import com.pubinfo.passbook.common.entity.TFileEnclosureFtp;
import com.pubinfo.passbook.common.model.dto.MDM.TSourceArtificialParam;
import com.pubinfo.passbook.common.model.dto.file.ArtificialParam;
import com.pubinfo.passbook.common.model.dto.financial.PassbookDetailsParam;
import com.pubinfo.passbook.common.model.http.request.GainWriteoffInstStatus.GainWriteoffInstStatusItems;
import com.pubinfo.passbook.common.model.http.request.GetWriteoffBaseData.GetWriteoffBaseDataItems;
import com.pubinfo.passbook.common.model.http.response.GetWriteoffBaseData.WriteoffBaseDataMessage;
import com.pubinfo.passbook.common.model.http.response.GetWriteoffInstStatus.WriteoffInstStatusMessage;
import com.pubinfo.passbook.common.model.ruler.Reimbursement;
import com.pubinfo.passbook.common.model.ruler.ReimbursementParam;

import java.util.List;

/**
 * 调用专用服务器接口
 */
public interface DedicatedService {
  /**
   * 创建报账接口
   *
   * @param xml
   * @return
   */
  String createWriteoff(String xml);
  
  String getWriteoffBaseDataItem(String xml);
  
  WriteoffInstStatusMessage getWriteoffInstStatusBodyItem(List<GainWriteoffInstStatusItems> account);
  
  WriteoffBaseDataMessage getWriteoffBaseDataItem(List<GetWriteoffBaseDataItems> account);
  
  String getSapNumber(String xml);
  
  TFileEnclosureFtp createExcelByClass(List<Reimbursement> reimbursement);

  TFileEnclosureFtp createShenGongSiExcel(ReimbursementParam reimbursementParam);

  String getPassbookDetails(PassbookDetailsParam param);
}
